package oracle;

import java.sql.*;

/*
* JDBC链接Oracle数据库
* 开发步骤：
* 1.加载驱动--Oracle--oracle.jdbc.OracleDriver
*            Mysql---com.mysql.jdbc.Driver
* 2.获取链接--链接成功数据库的对象--Connection对象
* 3.执行SQL语句【查询操作】
* ①oracle建表   login表  3个字段   序号、姓名、手机号
* ②编写静态sql:查询  select * from login;
* ③连接数据库同时获取：执行数据库对象：Statement 对象
* 4.执行SQL操作
* 5.处理结果    ResultSet    Statement   Connection
* 6.释放资源：结果集对象，执行SQL对象，获取链接数据库对象
*
* */
/*作业：参考MysqlJDBC  增加*/
// 插入操作

public class OracleJDBC {
    public static void main(String[] args) throws ClassNotFoundException, SQLException {
        //加载驱动
        Class.forName("oracle.jdbc.OracleDriver");
        //2.获取链接【准备工作】
        String username="system"; //Oracle用户名
        String password="chensiyu123"; //oracle密码
        String url="jdbc:oracle:thin:@127.0.0.1:1521:XE";//Oracle链接
        Connection con=DriverManager.getConnection(url,username,password);
        //打桩--测试链接是否成功
        System.out.println("是否链接："+con);
        //3.执行SQL语句 ②编写静态SQL：查询
        String sql="select * from login";
        //③链接成功数据库获取：执行数据库对象
        Statement st=con.createStatement();
        //4.执行SQL操作--返回对象：ResultSet对象：保存查询所有结果集
        ResultSet rs=st.executeQuery(sql);
        //5.处理结果   循环取所有字段下记录
        while(rs.next()){  //next()获取当前表中所有的字段,有字段返回true
            //获取字段getInt()去数据库整型
            int id=rs.getInt("id");
            String name=rs.getString("name");
            String phone=rs.getString("phone");
            System.out.println("序号:"+id+"姓名:"+name+"手机号:"+phone);
        }
        // 插入操作
        String insertSql = "INSERT INTO login (id, name, phone) VALUES (1, '张三', '13800001111')";
        int rowsAffected = st.executeUpdate(insertSql);
          System.out.println("插入操作受影响行数：" + rowsAffected);
        //6.释放资源
        rs.close();
        st.close();
        con.close();

    }
}
